Conventional image encoding and decoding methods split one picture into macroblocks so as to encode an image. Thereafter, inter prediction or intra prediction is used to prediction encode each of the macroblocks.
Inter prediction is a method of compressing an image by removing a temporal redundancy between pictures, and has motion estimation encoding as a representative example. Motion estimation encoding predicts each block of a current picture by using at least one reference region. A predetermined evaluation function is used to search for a reference block that is most similar to a current block within a predetermined search range.
The current block is predicted based on the reference block, and a residual block generated by subtracting a prediction block generated as a result of prediction from the current block is encoded. In this regard, in order to further accurately perform prediction, interpolation is performed on the search range of the reference region, sub-pixels of a pixel unit that is smaller than an integer pixel unit are generated, and inter prediction is performed based on the generated sub-pixels.